弹出视图修饰符(Presentation
这些修饰符用于配置通过 sheet 呈现的视图的行为和外观,包括在不同尺寸环境下的适配方式、拖拽指示器、支持的尺寸(detents)、背景交互、滚动与调整优先级等。
这些修饰符应作用于 被 sheet 弹出显示的根视图(例如
<VStack>、<NavigationStack>或<List>)。
presentationCompactAdaptation
定义当设备处于 横向或纵向紧凑尺寸类(Compact Size Class) 时,sheet 的适配方式。
类型
PresentationAdaptation 可选值:
"automatic":系统默认行为"fullScreenCover":使用全屏显示"sheet":使用普通 sheet 弹出样式"popover":使用气泡样式(部分平台支持)"none":不进行适配(尽可能维持原样)
示例
presentationDragIndicator
控制 sheet 顶部是否显示 拖拽指示器(即小横条)。
类型
示例
presentationDetents
定义 sheet 支持的 高度位置(detents),用户可以通过拖拽在这些高度间切换。
类型
PresentationDetent 可选值:
"medium":大约为屏幕高度的一半(在紧凑纵向尺寸下无效)"large":占满整个屏幕高度number > 1:表示固定的高度(单位为 pt)0 < number <= 1:表示按屏幕高度的百分比(例如0.5表示 50% 高度)
示例
presentationBackgroundInteraction
定义在弹出页面显示时,用户是否可以与 底层视图交互。
类型
示例:仅在 sheet 高度较小时允许背景交互
presentationContentInteraction
控制在向上滑动手势中,sheet 是优先 调整高度 还是 滚动内容。
类型
说明
"resizes":优先调整 detent 高度,滚动内容居后"scrolls":立即滚动内部内容(如 ScrollView)"automatic":系统默认行为(通常优先调整 detent)
示例
presentationCornerRadius
设置 sheet 背景的 圆角半径。
